/**
 * 
 */
package galacticthrone.screen.text;

/**
 * A font with a space theme to use in Galactic Throne.
 *
 * @author Jaco van der Westhuizen
 */
@Deprecated
public class SpaceVectorFontSmall extends VectorFont
{
	/**
	 * The singleton instance of the font.
	 */
	public static final SpaceVectorFontSmall instance = new SpaceVectorFontSmall();

	private final static float THIN  = 0.125f;
	private final static float THICK = 0.250f;

    /**
     * Constructor that creates all the font's symbols.
     */
    protected SpaceVectorFontSmall()
    {
	    super("SpaceFont", 3, 1, 0.5f);
	    
	    // A
	    symbols.put('A', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 1, 1, 3, THIN,  THIN),
	    											  new SegmentStraight(1, 3, 1, 1, THICK, THIN),
	    											  new SegmentStraight(0, 2, 1, 2, THIN,  THIN)}));

	    // B
	    symbols.put('B', new Symbol(1, new Segment[] {new SegmentStraight(0, 1, 0, 3, THIN,  THIN),
	    											  new SegmentCurvedCW(0, 3, 1, 2, THICK, THIN),
	    											  new SegmentCurvedCW(1, 2, 0, 1, THICK, THIN),
	    											  new SegmentStraight(0, 2, 1, 2, THIN,  THIN)}));

	    // C
	    symbols.put('C', new Symbol(1, new Segment[] {new SegmentCurvedCW(1, 1, 0, 2, THICK, THIN),
	    											  new SegmentCurvedCW(0, 2, 1, 3, THICK, THIN)}));
	    
	    // D
	    symbols.put('D', new Symbol(1, new Segment[] {new SegmentStraight(0, 1, 0, 3, THICK, THIN),
	    											  new SegmentCurvedCW(0, 3, 1, 2, THICK, THIN),
	    											  new SegmentCurvedCW(1, 2, 0, 1, THICK, THIN)}));
	    
	    // E
	    symbols.put('E', new Symbol(1, new Segment[] {new SegmentStraight(0, 2, 1, 2, THIN,  THIN),
	    											  new SegmentCurvedCW(0, 2, 1, 3, THICK, THIN),
	    											  new SegmentCurvedCW(1, 1, 0, 2, THICK, THIN)}));

	    // F
	    symbols.put('F', new Symbol(1, new Segment[] {new SegmentStraight(0, 1, 0, 2, THIN,  THIN),
	    											  new SegmentCurvedCW(0, 2, 1, 3, THIN,  THIN),
	    											  new SegmentStraight(0, 2, 1, 2, THIN,  THIN)}));

	    // G
	    symbols.put('G', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 2, 1, 3, THICK, THIN),
	    											  new SegmentStraight(0, 2, 0, 1, THICK, THIN),
	    											  new SegmentCurvedCW(1, 2, 0, 1, THIN,  THIN),
	    											  new SegmentStraight(1, 2, 1, 1, THICK, THIN)}));

	    // H
	    symbols.put('H', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN),
	    											  new SegmentStraight(1, 3, 1, 1, THICK, THIN),
	    											  new SegmentStraight(0, 2, 1, 2, THIN,  THIN)}));

	    // I
	    symbols.put('I', new Symbol(0, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN)}));

	    // J
	    symbols.put('J', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 1, 3, THIN,  THIN),
	    											  new SegmentStraight(1, 3, 1, 2, THICK, THIN),
	    											  new SegmentCurvedCW(1, 2, 0, 1, THICK, THIN)}));

	    // K
	    symbols.put('K', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN),
	    											  new SegmentCurvedCW(1, 3, 0, 2, THICK, THIN),
	    											  new SegmentCurvedCW(0, 2, 1, 1, THICK, THIN)}));

	    // L
	    symbols.put('L', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN),
	    											  new SegmentStraight(0, 1, 1, 1, THIN,  THIN)}));

	    // M
	    symbols.put('M', new Symbol(2, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN),
	    											  new SegmentCurvedCW(0, 3, 1, 1, THICK, THIN),
	    											  new SegmentStraight(1, 1, 1, 3, THIN,  THIN),
	    											  new SegmentCurvedCW(1, 3, 2, 1, THICK, THIN)}));

	    // N
	    symbols.put('N', new Symbol(1, new Segment[] {new SegmentStraight(0, 1, 0, 3, THIN,  THIN),
	    											  new SegmentCurvedCW(0, 3, 1, 1, THICK, THIN),
	    											  new SegmentStraight(1, 1, 1, 3, THIN,  THIN)}));

	    // O
	    symbols.put('O', new Symbol(1, new Segment[] {new SegmentStraight(1, 3, 1, 2, THICK, THIN),
	    											  new SegmentCurvedCW(1, 2, 0, 1, THICK, THIN),
	    											  new SegmentStraight(0, 1, 0, 2, THIN,  THIN),
	    											  new SegmentCurvedCW(0, 2, 1, 3, THIN,  THIN)}));

	    // P
	    symbols.put('P', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(0, 3, 1, 2, THICK, THIN),
                                    				  new SegmentStraight(1, 2, 0, 2, THIN,  THIN)}));

	    // Q
	    symbols.put('Q', new Symbol(2, new Segment[] {new SegmentStraight(1, 3, 1, 2, THICK, THIN),
	    											  new SegmentCurvedCW(1, 2, 0, 1, THICK, THIN),
	    											  new SegmentStraight(0, 1, 0, 2, THIN,  THIN),
	    											  new SegmentCurvedCW(0, 2, 1, 3, THIN,  THIN),
	    											  new SegmentStraight(1, 2, 2, 1, THICK, THIN)}));

	    // R
	    symbols.put('R', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(0, 3, 1, 2, THICK, THIN),
                                    				  new SegmentStraight(1, 2, 0, 2, THIN,  THIN),
                                    				  new SegmentCurvedCW(0, 2, 1, 1, THICK, THIN)}));

	    // S
	    symbols.put('S', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 2, 1, 3, THICK, THIN),
                                    				  new SegmentStraight(0, 2, 1, 2, THIN,  THIN),
                                    				  new SegmentCurvedCW(1, 2, 0, 1, THICK, THIN)}));

	    // T
	    symbols.put('T', new Symbol(2, new Segment[] {new SegmentStraight(0, 3, 2, 3, THIN,  THIN),
	    											  new SegmentStraight(1, 3, 1, 1, THICK, THIN)}));

	    // U
	    symbols.put('U', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(1, 3, 0, 1, THIN,  THIN),
                                    				  new SegmentStraight(1, 3, 1, 1, THICK, THIN)}));

	    // V
	    symbols.put('V', new Symbol(1, new Segment[] {new SegmentCurvedCW(1, 1, 0, 3, THICK, THIN),
                                    				  new SegmentStraight(1, 1, 1, 3, THIN,  THIN)}));

	    // W
	    symbols.put('W', new Symbol(2, new Segment[] {new SegmentCurvedCW(1, 1, 0, 3, THICK, THIN),
                                    				  new SegmentStraight(1, 1, 1, 2, THIN,  THIN),
                                    				  new SegmentCurvedCW(1, 2, 2, 1, THICK, THIN),
                                    				  new SegmentStraight(2, 1, 2, 3, THIN,  THIN)}));

	    // X
	    symbols.put('X', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 3, 1, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(0, 1, 1, 3, THICK, THIN)}));

	    // Y
	    symbols.put('Y', new Symbol(1, new Segment[] {new SegmentCurvedCW(1, 2, 0, 3, THICK, THIN),
                                    				  new SegmentStraight(1, 3, 1, 1, THICK, THIN)}));

	    // Z
	    symbols.put('Z', new Symbol(1, new Segment[] {new SegmentStraight(1, 1, 0, 1, THIN,  THIN),
                                    				  new SegmentCurvedCW(0, 1, 1, 3, THICK, THIN),
                                    				  new SegmentStraight(1, 3, 0, 3, THIN,  THIN)}));

	    // a
	    symbols.put('a', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 1, 1, 2, THICK, THIN),
                                    				  new SegmentStraight(0, 1, 1, 1, THIN,  THIN),
                                    				  new SegmentStraight(1, 2, 1, 1, THICK, THIN)}));

	    // b
	    symbols.put('b', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(0, 2, 1, 1, THIN,  THIN),
                                    				  new SegmentStraight(1, 1, 0, 1, THICK, THIN)}));

	    // c
	    symbols.put('c', new Symbol(1, new Segment[] {new SegmentCurvedCW(1, 1, 0, 2, THICK, THIN),
                                    				  new SegmentStraight(0, 2, 1, 2, THIN,  THIN)}));

	    // d
	    symbols.put('d', new Symbol(1, new Segment[] {new SegmentStraight(1, 3, 1, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(0, 1, 1, 2, THICK, THIN),
                                    				  new SegmentStraight(0, 1, 1, 1, THIN,  THIN)}));

	    // e
	    symbols.put('e', new Symbol(1, new Segment[] {new SegmentStraight(0, 1, 1, 2, THIN,  THIN),
                                    				  new SegmentStraight(1, 2, 0, 2, THIN,  THIN),
                                    				  new SegmentCurvedCW(1, 1, 0, 2, THICK, THIN)}));

	    // f
	    symbols.put('f', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 1, 1, 3, THIN,  THIN),
	    											  new SegmentStraight(0, 2, 1, 2, THIN,  THIN)}));

	    // g
	    symbols.put('g', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 1, 1, 2, THICK, THIN),
                                    				  new SegmentStraight(0, 1, 1, 1, THIN,  THIN),
                                    				  new SegmentStraight(1, 2, 1, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(1, 1, 0, 0, THICK, THIN)}));

	    // h
	    symbols.put('h', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(0, 2, 1, 1, THICK, THIN)}));

	    // i
	    symbols.put('i', new Symbol(0, new Segment[] {new SegmentStraight(0, 2, 0, 1, THICK, THIN),
                                    				  new SegmentStraight(0, 3, 0, 3, THICK, THIN)}));

	    // j
	    symbols.put('j', new Symbol(1, new Segment[] {new SegmentStraight(1, 2, 1, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(1, 1, 0, 0, THICK, THIN),
                                    				  new SegmentStraight(1, 3, 1, 3, THICK, THIN)}));

	    // k
	    symbols.put('k', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN),
                                    				  new SegmentStraight(1, 2, 0, 2, THIN,  THIN),
                                    				  new SegmentCurvedCW(0, 2, 1, 1, THICK, THIN)}));

	    // l
	    symbols.put('l', new Symbol(0, new Segment[] {new SegmentStraight(0, 3, 0, 1, THICK, THIN)}));

	    // m
	    symbols.put('m', new Symbol(2, new Segment[] {new SegmentStraight(0, 1, 0, 2, THICK, THIN),
                                    				  new SegmentCurvedCW(0, 2, 1, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(1, 1, 2, 2, THIN,  THIN),
                                    				  new SegmentStraight(2, 2, 2, 1, THICK, THIN)}));

	    // n
	    symbols.put('n', new Symbol(1, new Segment[] {new SegmentStraight(0, 2, 0, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(0, 2, 1, 1, THICK, THIN)}));

	    // o
	    symbols.put('o', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 1, 1, 2, THIN,  THIN),
                                    				  new SegmentCurvedCW(1, 2, 0, 1, THICK, THIN)}));

	    // p
	    symbols.put('p', new Symbol(1, new Segment[] {new SegmentStraight(0, 2, 0, 0, THICK, THIN),
                                    				  new SegmentCurvedCW(0, 2, 1, 1, THICK, THIN),
                                    				  new SegmentStraight(1, 1, 0, 1, THIN,  THIN)}));

	    // q
	    symbols.put('q', new Symbol(2, new Segment[] {new SegmentCurvedCW(0, 1, 1, 2, THICK, THIN),
                                    				  new SegmentStraight(0, 1, 1, 1, THIN,  THIN),
                                    				  new SegmentStraight(1, 2, 1, 0, THICK, THIN),
                                    				  new SegmentCurvedCW(1, 0, 2, 1, THIN,  THIN)}));

	    // r
	    symbols.put('r', new Symbol(1, new Segment[] {new SegmentStraight(0, 2, 0, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(0, 2, 1, 2, THIN,  THIN)}));

	    // s
	    symbols.put('s', new Symbol(1, new Segment[] {new SegmentStraight(1, 2, 0, 2, THIN,  THIN),
                                    				  new SegmentStraight(0, 2, 1, 1, THICK, THIN),
                                    				  new SegmentStraight(1, 1, 0, 1, THIN,  THIN)}));
	    
	    // t
	    symbols.put('t', new Symbol(1, new Segment[] {new SegmentCurvedCW(1, 1, 0, 3, THICK, THIN),
                                    				  new SegmentStraight(0, 2, 1, 2, THIN,  THIN)}));

	    // u
	    symbols.put('u', new Symbol(1, new Segment[] {new SegmentStraight(0, 2, 0, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(1, 2, 0, 1, THIN,  THIN),
                                    				  new SegmentStraight(1, 2, 1, 1, THICK, THIN)}));

	    // v
	    symbols.put('v', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 2, 1, 1, THICK, THIN),
                                    				  new SegmentStraight(1, 1, 1, 2, THIN,  THIN)}));

	    // w
	    symbols.put('w', new Symbol(2, new Segment[] {new SegmentCurvedCW(0, 2, 1, 1, THICK, THIN),
                                    				  new SegmentStraight(1, 1, 1, 2, THIN,  THIN),
                                    				  new SegmentCurvedCW(1, 2, 2, 1, THICK, THIN),
                                    				  new SegmentStraight(2, 1, 2, 2, THIN,  THIN)}));

	    // x
	    symbols.put('x', new Symbol(1, new Segment[] {new SegmentStraight(0, 2, 1, 1, THICK, THIN),
                                    				  new SegmentStraight(0, 1, 1, 2, THICK, THIN)}));

	    // y
	    symbols.put('y', new Symbol(1, new Segment[] {new SegmentCurvedCW(1, 1, 0, 2, THICK, THIN),
                                    				  new SegmentStraight(1, 2, 1, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(1, 1, 0, 0, THICK, THIN)}));

	    // z
	    symbols.put('z', new Symbol(1, new Segment[] {new SegmentStraight(1, 1, 0, 1, THIN,  THIN),
                                    				  new SegmentCurvedCW(0, 1, 1, 2, THICK, THIN),
                                    				  new SegmentStraight(1, 2, 0, 2, THIN,  THIN)}));

	    // 1
	    symbols.put('1', new Symbol(1, new Segment[] {new SegmentCurvedCW(1, 3, 0, 2, THIN,  THIN),
                                    				  new SegmentStraight(1, 3, 1, 1, THICK, THIN)}));

	    // 2
	    symbols.put('2', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 3, 1, 2, THICK, THIN),
                                                      new SegmentCurvedCW(0, 1, 1, 2, THICK, THIN),
                                                      new SegmentStraight(0, 1, 1, 1, THIN,  THIN)}));

	    // 3
	    symbols.put('3', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 3, 1, 2, THICK, THIN),
                									  new SegmentStraight(0, 2, 1, 2, THIN,  THIN),
                                                      new SegmentCurvedCW(1, 2, 0, 1, THICK, THIN)}));

	    // 4
	    symbols.put('4', new Symbol(1, new Segment[] {new SegmentStraight(0, 2, 0, 3, THICK, THIN),
                									  new SegmentStraight(1, 3, 1, 1, THICK, THIN),
                                                      new SegmentStraight(0, 2, 1, 2, THIN,  THIN)}));

	    // 5
	    symbols.put('5', new Symbol(1, new Segment[] {new SegmentStraight(1, 3, 0, 3, THIN,  THIN),
                									  new SegmentStraight(0, 3, 0, 2, THICK, THIN),
                                                      new SegmentStraight(0, 2, 1, 2, THIN,  THIN),
                									  new SegmentStraight(1, 2, 1, 1, THICK, THIN),
                                                      new SegmentStraight(1, 1, 0, 1, THIN,  THIN)}));

	    // 6
	    symbols.put('6', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 2, 1, 3, THICK, THIN),
                									  new SegmentStraight(0, 1, 0, 2, THICK, THIN),
                                                      new SegmentCurvedCW(0, 2, 1, 1, THIN,  THIN),
                									  new SegmentStraight(0, 1, 1, 1, THIN,  THIN)}));

	    // 7
	    symbols.put('7', new Symbol(1, new Segment[] {new SegmentStraight(0, 3, 1, 3, THIN,  THIN),
                                                      new SegmentCurvedCW(0, 1, 1, 3, THICK, THIN)}));

	    // 8
	    symbols.put('8', new Symbol(1, new Segment[] {new SegmentStraight(1, 3, 1, 2, THICK, THIN),
	    											  new SegmentCurvedCW(1, 2, 0, 1, THICK, THIN),
	    											  new SegmentStraight(0, 1, 0, 2, THIN,  THIN),
	    											  new SegmentCurvedCW(0, 2, 1, 3, THIN,  THIN),
	    											  new SegmentStraight(0, 2, 1, 2, THIN,  THIN)}));

	    // 9
	    symbols.put('9', new Symbol(1, new Segment[] {new SegmentCurvedCW(1, 2, 0, 1, THICK, THIN),
                									  new SegmentStraight(1, 2, 1, 3, THICK, THIN),
                                                      new SegmentCurvedCW(0, 2, 1, 3, THIN,  THIN),
                									  new SegmentStraight(1, 2, 0, 2, THIN,  THIN)}));

	    // 0
	    symbols.put('0', new Symbol(1, new Segment[] {new SegmentCurvedCW(0, 3, 1, 2, THICK, THIN),
                                    				  new SegmentStraight(1, 2, 1, 1, THICK, THIN),
                                    				  new SegmentCurvedCW(1, 1, 0, 2, THIN,  THIN),
                                    				  new SegmentStraight(0, 2, 0, 3, THIN,  THIN),
                                    				  new SegmentStraight(0, 1, 1, 3, THIN,  THIN)}));

	    // .
	    symbols.put('.', new Symbol(0, new Segment[] {new SegmentStraight(0, 1, 0, 1, THICK, THIN)}));

	    // ,
	    symbols.put(',', new Symbol(0, new Segment[] {new SegmentStraight(0, 1, 0, 0, THICK, THIN)}));

	    // :
	    symbols.put(':', new Symbol(0, new Segment[] {new SegmentStraight(0, 1, 0, 1, THICK, THIN),
	    											  new SegmentStraight(0, 2, 0, 2, THICK, THIN)}));

	    // ;
	    symbols.put(';', new Symbol(0, new Segment[] {new SegmentStraight(0, 1, 0, 0, THICK, THIN),
	    											  new SegmentStraight(0, 2, 0, 2, THICK, THIN)}));

	    // <SPACE>
	    symbols.put(' ', new Symbol(1, new Segment[] {}));
    }
}
